package com.sunther.document.service;


import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.sunther.document.entity.User;
import com.sunther.idb.common.util.WebResult;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;
import java.util.Set;

/**
 * @author admin
 */
public interface UserService extends IService<User> {

    User getByName(String name);

    WebResult saveOrUpdateUser(User user, HttpServletRequest request);

    Page pageList(String keyword, String projectId, Integer roleId, int pageNumber, int pageSize);

    void export(String keyword, String projectId, Integer roleId, HttpServletResponse response) throws Exception;

    WebResult resetPassword(Integer id, String newPassword);

    List<User> listByKeyword(String keyword);

    WebResult reg(User user, String capCpde, HttpServletRequest request);

    List<User> getUserByIds(Set<Integer> parts);

    Map<Long, String> getUserNickNameMapByIds(Set<Integer> parts);

    User dtl(Integer id);

    WebResult delete(String id);
}
